import os
import shutil

def cleanup():
    """清理所有上传的文件和数据"""
    try:
        # 清理上传的文件
        uploads_dir = os.path.join('static', 'uploads')
        if os.path.exists(uploads_dir):
            shutil.rmtree(uploads_dir)
            print(f'已清理上传目录: {uploads_dir}')
            # 重新创建空目录
            os.makedirs(uploads_dir)
        
        # 清理数据文件
        workspace_dir = os.path.join('workspace', 'data')
        if os.path.exists(workspace_dir):
            shutil.rmtree(workspace_dir)
            print(f'已清理工作空间: {workspace_dir}')
            # 重新创建空目录
            os.makedirs(workspace_dir)
            # 创建空的 documents.json
            with open(os.path.join(workspace_dir, 'documents.json'), 'w', encoding='utf-8') as f:
                f.write('[]')
        
        print('清理完成！')
        
    except Exception as e:
        print(f'清理过程中发生错误: {str(e)}')

if __name__ == '__main__':
    # 请求确认
    confirm = input('这将删除所有上传的文件和数据，确定要继续吗？(y/N): ')
    if confirm.lower() == 'y':
        cleanup()
    else:
        print('操作已取消') 